package com.li.onjava8.concurrent.cf.construct;

import java.util.concurrent.atomic.AtomicInteger;

/**
 * 很显然，纯静态 int 用于构造过程并不是线程安全的。让我们使用
 * AtomicInteger 来使其变为线程安全的。
 */
public class GuardedIDField implements HasId{
    private static AtomicInteger counter = new
            AtomicInteger();
    private int id = counter.getAndIncrement();
    public int getID() { return id; }
    public static void main(String[] args) {
        IDChecker.test(GuardedIDField::new);
    }
}
